package bulletin

type Common struct {
	CreateTime string `gorm:"column:create_time" json:"createTime"`
	UpdateTime string `gorm:"column:update_time" json:"updateTime"`
}

type Bulletin struct {
	UpdateDb
	Common
}

type UpdateDb struct {
	Id            int    `gorm:"column:id" json:"id"`                        // ID
	PlaceId       int    `gorm:"column:place_id" json:"placeId"`             // 门店ID
	Status        uint8  `gorm:"column:status" json:"status"`                // 状态 1-开启 2-关闭 3-审核中 4-审核不通过
	Weight        uint8  `gorm:"column:weight" json:"weight"`                // 权重 1-普通 2-重要
	Title         string `gorm:"column:title" json:"title"`                  // 公告标题
	Message       string `gorm:"column:message" json:"message"`              // 公告信息
	RejectMessage string `gorm:"column:reject_message" json:"rejectMessage"` // 审核驳回原因
	ExpireTime    string `gorm:"column:expire_time" json:"expireTime"`       // 到期时间
}

func (m *UpdateDb) TableName() string {
	return "bulletin"
}

type StaffInformMessage struct {
	Common
	StaffInformMessageDb
	Id       int    `gorm:"column:id" json:"id"`
	ReadTime string `gorm:"column:read_time" json:"readTime"`
}
type StaffInformMessageDb struct {
	PlaceId int    `gorm:"column:place_id" json:"placeId"`
	StaffId int    `gorm:"column:staff_id" json:"staffId"`
	Status  uint8  `gorm:"column:status" json:"status"`
	Type    uint8  `gorm:"column:type" json:"type"`
	Title   string `gorm:"column:title" json:"title"`
	Message string `gorm:"column:message" json:"message"`
}

func (m *StaffInformMessageDb) TableName() string {
	return "staff_inform_message"
}
